/* ---------------------------------------------------------------------------------------------------- */
/* Typefaces */

@font-face
{
	font-family:'heading';
	src:url('fonts/bellota-light-webfont.eot'); /* IE9 Compat Modes */
	src:url('fonts/bellota-light-webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		url('fonts/bellota-light-webfont.woff') format('woff'), /* Modern Browsers */
		url('fonts/bellota-light-webfont.ttf')  format('truetype'), /* Safari, Android, iOS */
		url('fonts/bellota-light-webfont.svg#svgFontName') format('svg'); /* Legacy iOS */
	font-weight:normal;
	font-style:normal;
}

@font-face
{
	font-family:'body';
	src:url('fonts/DroidSerif-webfont.eot'); /* IE9 Compat Modes */
	src:url('fonts/DroidSerif-webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		url('fonts/DroidSerif-webfont.woff') format('woff'), /* Modern Browsers */
		url('fonts/DroidSerif-webfont.ttf')  format('truetype'), /* Safari, Android, iOS */
		url('fonts/DroidSerif-webfont.svg#svgFontName') format('svg'); /* Legacy iOS */
	font-weight:normal;
	font-style:normal;
}

@font-face
{
	font-family:'mono';
	src:url('fonts/DroidSansMono-webfont.eot'); /* IE9 Compat Modes */
	src:url('fonts/DroidSansMono-webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		url('fonts/DroidSansMono-webfont.woff') format('woff'), /* Modern Browsers */
		url('fonts/DroidSansMono-webfont.ttf')  format('truetype'), /* Safari, Android, iOS */
		url('fonts/DroidSansMono-webfont.svg#svgFontName') format('svg'); /* Legacy iOS */
	font-weight:normal;
	font-style:normal;
}

/* ---------------------------------------------------------------------------------------------------- */
/* Reset */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, nav, section, article, aside, figure, figcaption, hgroup, footer, header, audio, video, canvas { margin:0; padding:0; border:0; outline:0; font-weight:inherit; font-style:inherit; font-family:inherit; vertical-align:baseline; }
:focus { outline:0; }
body { line-height:1; }
ol, ul { list-style:none; }
table { border-collapse:separate; border-spacing:0; }
caption, th, td { text-align:left; font-weight:normal; }
blockquote:before, blockquote:after, q:before, q:after { content:''; }
blockquote, q { quotes:'' ''; }

/* ---------------------------------------------------------------------------------------------------- */
/* Type */

body { font-family:'body',serif; font-size:120%; line-height:1.35em; color:#606060; }

em { font-style:italic; }
strong { font-weight:bold; }

a { text-decoration:underline; color:#606060; }
a:visited { color:#606060; }
a:hover { color:#d92b2b; }
a:active { color:#d92b2b; }

a, a:hover, a:active, a:focus, a:visited,
input, input:hover, input:active, input:focus { transition:all 250ms ease; }

h1 { padding:0; margin:0.00em 0 0.00em 0; font-size:7.00em; line-height:1.00em; font-weight:normal; font-family:'heading',sans-serif; text-shadow:0.05em 0.05em 0 rgba(0,0,0,0.15); }
h2 { padding:0; margin:0.33em 0 0.66em 0; font-size:4.50em; line-height:1.00em; font-weight:normal; font-family:'heading',sans-serif; }
h3 { padding:0; margin:1.00em 0 1.00em 0; font-size:1.50em; line-height:1.25em; font-weight:normal; }

p,
blockquote,
table,
ul,
ol { margin:1.5em 0; }

ul { list-style:disc outside; }
ol { list-style:decimal outside; }

hr
{
	max-width:40em;
	margin:0 auto;
	border:none;
	border-bottom:1px solid #cccccc;
}

@media screen and ( max-width:50em )
{
	hr { display:none; }
}

/* ---------------------------------------------------------------------------------------------------- */
/* Type size */

@media screen and ( max-width:80em ) { body { font-size:115%; } }
@media screen and ( max-width:70em ) { body { font-size:105%; } }
@media screen and ( max-width:60em ) { body { font-size: 95%; } }
@media screen and ( max-width:45em ) { body { font-size: 90%; } }
@media screen and ( max-width:30em ) { body { font-size: 85%; } }

/* ---------------------------------------------------------------------------------------------------- */
/* Code */

pre
{
	padding:1.5em; margin:1.5em -1.5em;
	background:rgba(0,0,0,0.065);
}

code
{
	font-family:'mono',monospace;

}

.code_tag { color:#d92b2b; }
.code_attribute { color:#58a907; }
.code_value { color:#2b82d9; }

/* ---------------------------------------------------------------------------------------------------- */
/* Definitions */

dl
{
	padding:1.5em; margin:1.5em -1.5em;
	background:rgba(0,0,0,0.065);
	transform-origin:center top;
}

dt
{
	margin:0.75em 0;
	font-size:1.50em;
}

dd { padding:0 0 0 10%; }

/* ---------------------------------------------------------------------------------------------------- */
/* Misc */

/* Clearfix */
.clearfix, .columns, .column, .wrapper { *zoom:1; }
.clearfix:after, .columns:after, .column:after, .wrapper:after { content:''; display:table; clear:both; }

/* Border/padding box model */
* { box-sizing:border-box; }

/* Strip top/bottom margin on first/last child elements */
* > :first-child { margin-top:0 !important; }
* > :last-child { margin-bottom:0 !important; }

/* Plain lists */
.plain, .plain > li { list-style:none; }
.plain > li { margin:0; }

/* ---------------------------------------------------------------------------------------------------- */
/* Columns */

.columns { margin:1.5em -1.5em; }

.column { padding:0 1.5em; margin:0.75em 0; float:left; }

.column_right { float:right; }

.column_xlarge  { width:100%; }
.column_large   { width:61.8034%; }
.column_medium  { width:38.1966%; }
.column_small   { width:23.6068%; }
.column_xsmall  { width:14.5898%; }
.column_xxsmall { width: 9.0170%; }

/* Collapsing columns */

@media screen and ( max-width:50em )
{
	.columns_content > .column { width:100%; margin:1.5em 0; float:none; }
}

/* ---------------------------------------------------------------------------------------------------- */
/* Buttons */

.button { perspective:300px; }

.button a
{
	display:block;
	padding:0.5em 1em;
	border:none; border-radius:0;
	background:#d92b2b;
	color:white; text-decoration:none;
	cursor:pointer;
	-webkit-appearance:none;
	box-shadow:0 0 0 rgba(0,0,0,0.25);
}

.button_alt a { background:#2b82d9; }

.button a:focus,
.button a:hover
{
	transform:rotateX(15deg);
	box-shadow:0 0.3em 0.5em rgba(0,0,0,0.25);
}

.button a:active
{
	transform:rotateX(-15deg);
	box-shadow:0 -0.3em 0.5em rgba(0,0,0,0.25);
}

/* ---------------------------------------------------------------------------------------------------- */
/* Main elements */

html, body { width:100%; height:100%; position:relative; background:white; }

body { padding:3.5em 0 0 0; }

.wrapper
{
	max-width:60em;
	margin:0 auto;
}

/* ---------------------------------------------------------------------------------------------------- */
/* Sections */

.section
{
	padding:6em 1.5em;
	position:relative;
	overflow:hidden;
	background:white;
}

@media screen and ( max-width:50em ) { .section { padding:3.0em 1.5em; } }
@media screen and ( max-width:30em ) { .section { padding:1.5em 1.5em; } }

/* ---------------------------------------------------------------------------------------------------- */
/* Header */

.header
{
	width:100%;
	padding:0.75em 1.5em;
	position:fixed; top:0; left:0; right:0; z-index:100;
	background:#606060;
}

@media screen and ( max-width:30em )
{
	body { padding:0; }

	.header
	{
		padding:0;
		position:static; top:auto; left:auto; right:auto; z-index:0;
	}
}

/* ---------------------------------------------------------------------------------------------------- */
/* Footer */

.footer
{
	overflow:hidden;
	perspective:500px; transform-style:preserve-3d;
}

.footer_block
{
	padding:5% 1.5em;
	transform-origin:center bottom;
	background:#606060;
	color:#b0b0b0;
}

.footer a { color:#b0b0b0; }
.footer a:hover { color:white; }

/* ---------------------------------------------------------------------------------------------------- */
/* Navigation */

.nav { }

.nav_onpage { float:left; }
.nav_offsite { float:right; }

.nav ul { margin:0 -1.00em; }
.nav li { margin:0  0.50em; float:left; }

.nav a
{
	display:block;
	text-decoration:none;
}

.nav_item_text a
{
	padding:0.5em 0.5em;
	color:#b0b0b0;
}

.nav_item_text a:hover
{
	color:white;
	transform:scale(1.25);
}

@media screen and ( max-width:40em )
{
	.longtext { display:none; }
}

@media screen and ( max-width:30em )
{
	.longtext { display:inline; }

	.nav { float:none; font-size:1.5em; }

	.nav ul { margin:0; text-align:center; }
	.nav li { margin:0; float:none; display:inline-block; }

	.nav .nav_item_text { margin:0 0.25em; }
	.nav .nav_item_button { display:block; float:none; clear:both; }

	.nav a { padding:1em 0; text-align:center; }

}

/* ---------------------------------------------------------------------------------------------------- */
/* Intro */

.section_intro
{
	padding:15% 1.5em;
	background:#93ca3a;
	color:white;
	text-align:center;
}

/* ---------------------------------------------------------------------------------------------------- */
/* Effects */

.effects
{
	margin:-0.75em !important;
}

.effect
{
	width:50%;
	border:0.75em solid white;
	float:left;
	background:rgba(0,0,0,0.065);
}

.effect_box
{
	display:block;
	width:100%; height:0;
	padding:0 0 100% 0;
}

.effect_box_opacity   { background:#606060; }
.effect_box_scale     { background:#2b82d9; }
.effect_box_rotate    { background:#d92b2b; }
.effect_box_translate { background:#93ca3a; }

@media screen and ( max-width:50em )
{
	.effect { width:25%; }
}

@media screen and ( max-width:30em )
{
	.effect { width:50%; }
}

/* ---------------------------------------------------------------------------------------------------- */